const treeService = require('../services/treeService')

// 导入 bcryptjs 加密包
const bcrypt = require('bcryptjs')


// 登录
exports.loginUser = (req, res) => {
  // 接收数据
  const { account, password } = req.body

  // 1、用户登录
  userService.loginUser(account, password, res)

  // res.send('login ok')
}

// 用户管理列表
// exports.list = (req, res) => {
//   // 接收数据
//   const params = req.body
//   const boolean = params.hasOwnProperty('search_key')
//   // 1、查询
//   console.log(boolean, 'boolean');
//   if(!boolean || Object.keys(params?.search_key).length === 0) {
//     // 全部查询
//     treeService.list(res)
//   } else {
//    console.log(2222);
//     // 属性查询
//       // 删除空值
//     for (const key in params.search_key) {
//       // 检查属性值是否为 null、undefined 或空字符串
//       if (params.search_key[key] === null || params.search_key[key] === undefined || params.search_key[key] === '') {
//         // 如果是，则删除该属性
//         delete params.search_key[key];
//       }
//     }
//     treeService.paramsList(params, res)
//   }
//   // res.send('login ok')
// }
exports.list = (req, res) => {
  // 接收数据
  const params = req.body
  const boolean = params.hasOwnProperty('search_key')
  // 1、查询
  console.log(boolean, 'boolean');
  if(!boolean || boolean && Object.keys(params?.search_key).length === 0) {
    // 全部查询
    console.log(1111);
    treeService.list(req, res)
  } else {
   console.log(2222);
    // 属性查询
      // 删除空值
    for (const key in params.search_key) {
      // 检查属性值是否为 null、undefined 或空字符串
      if (params.search_key[key] === null || params.search_key[key] === undefined || params.search_key[key] === '') {
        // 如果是，则删除该属性
        delete params.search_key[key];
      }
    }
    if(Object.keys(params?.search_key).length === 0) {
      console.log(3333);
      treeService.list(req, res)
    } else {
      console.log(4444);
      treeService.paramsList(req, res)
    }
  }
  // res.send('login ok')
}

exports.add = (req, res) => {
  // 接收数据
  // 1、添加设置
  treeService.add(req, res)
  //
}

exports.delete = (req, res) => {
  // 接收数据
  // 1、删除设置
  treeService.delete(req, res)
  //
}
exports.update = (req, res) => {
  // 接收数据
  // 1、修改设置
  treeService.update(req, res)
  //
}